home *** CD-ROM | disk | FTP | other *** search
/ ETO Development Tools 1 / ETO Development Tools 1.iso / Essentials / MacApp Documentation / MacApp AppleLink Messages / MacApp.Tech$ Jun 89 / V0051-TDocument Rethink-Jun89 < prev    next >
Encoding:
Text File  |  1989-06-26  |  3.8 KB  |  87 lines  |  [TEXT/GEOL]

  1. Item    9430217                         19-June-89        11:19
  2.  
  3. From:   D2086                           Efficient Field Svc, C Faith, PRT
  4.  
  5. To:     MACAPP.TECH$                    MACAPP Tech
  6.  
  7. Sub:    TDocument Rethink
  8.  
  9. Larry et al.
  10.  
  11. I've been out of town for a week so this is a response to a your link to Les
  12. Caudle.
  13.  
  14. I do think that there is validity to your point that unless some window is open
  15. there are problems with the user knowing what noun to perform specified actions
  16. on.
  17.  
  18. However I would like to discuss this matter in a broader scope.
  19.  
  20. 1)  MacApp has defined TDocument to be an object that is an integral part of
  21. every application (unless lots of behavior is OVERRIDDEN [is that the right
  22. word?]).  This means that TDocument should apply to as many possible situations
  23. as is reasonable.  TDocument should therefore map to a general user interface
  24. concept.
  25.  
  26. 2)  There is a difference between the users view of an application and
  27. documents and MacApp's current treatment of such.
  28.     Specifically, the average user considers a document anything that can be
  29. opened from the finder by double clicking, with the exception of the
  30. applications themselves.  This definition also includes anything that can be
  31. printed from the finder.
  32.     MacApp has a much more restrictive view of documents.  It treats them as
  33. simple documents, i.e. a letter, a picture etc.  Simple documents should be
  34. implemented as a TSimpleDocument subclass of TDocument.  The implementation of
  35. more complex documents would be easier and would be done through a subclass of
  36. TDocument.
  37.     Obviously MacApp could not anticipate all actions of all possible documents
  38.  hence a simple version of the document is appropriate.  IT IS NOT APPROPRIATE
  39. HOWEVER to have MacApp using a non-general document as one of its base classes.
  40.  The simple document should not be a base class.  It should be a more specific
  41. implementation of a general class, much as TWindow is a more specific subclass
  42. of TView.
  43.  
  44. 3) There are 2 steps to the process of improving MacApp that I would like to
  45. see implemented.
  46.  
  47.     A) The quicker less elegant solution that could be implemented as part of
  48.     MacApp 2.1 which should be seen reasonably soon.  This solution would
  49.     involve making the current scenario more general through relatively
  50.     minor changes.
  51.  
  52.         1) Closing windows should not set the target to the application.  This
  53.        implies a 1 to 1 window to application correspondence.  Not very
  54.         general!  At the least this should be done only if fClosesDocument is
  55.         true.
  56.  
  57.         2) Documents need to have better access to commands and the command
  58.         chain.  The current scenario forces the application object to perform
  59.         actions that would best be done at the document level.  Adding a
  60.         document type to an application is now very involved since the
  61.         application needs to know too much about the documents.  Documents
  62.  
  63.         There is too much hand holding involved here.  To assume that documents
  64.         should only process commands when they have a window in front because
  65.         doing otherwise makes it easy for the programmer to create unintuitive
  66.         interfaces is going too far.  It seriously limits the document
  67.         metaphor.
  68.  
  69.         3) I am sure there are other things that should be done.  I just can't
  70.         think of them all right now.
  71.  
  72.     B) The longer term MacApp 3.0 solution.  This would be a rewrite and
  73.     rethink of the entire TDocument class and its behavior to include both
  74.     the more general case and the simple cases.  It might include the
  75.     capablities to manage groups of files and other actions that have been
  76.     mentioned in this discussion.  The exact form of this rewrite should take
  77.     a lot of thought, and I am not able to offer as specific recommendations
  78.     for this solution.
  79.  
  80. Curtis Faith
  81.  
  82.  
  83.  
  84.  
  85.  
  86.  
  87.